package com.effect.part1_ObjectCrateDestroy.item3;

/**
 * Created by jon on 17-10-7.
 * 私有构造器仅被调用一次，用来实例化公有的静态final域
 * 由于缺少公有的或者受保护的构造器,所以保证了Elvis的全局唯一性　
 *
 *但是要注意：　客户端可以借助AccessibleObject.setAccessible方法
 * 通过反射机制调用私有构造器
 */

//Singleton with public final field
public class Elvis_01 {
    public static final Elvis_01 INSTANCE = new Elvis_01();

    private Elvis_01() {
    }

    public void leaveTheBuilding() {

    }
}
